//
//  HomeUserModel.swift
//  JKWeiBo
//
//  Created by 王冲 on 2017/12/10.
//  Copyright © 2017年 希爱欧科技有限公司. All rights reserved.
//

import UIKit

class HomeUserModel: NSObject {

    // Bool 和 Int  要给他们附上初始值
    // 用户的ID
    var id: Int = 0
    // 友好显示名称
    var name: String?
    // 用户头像地址（中图），50*50像素
    var profile_image_url: String?
    {
        didSet{
            if let url = profile_image_url{
                userImage_url = NSURL(string: url)
            }
        }
    }
    // 用户的头像转 url
    var userImage_url: NSURL?
    // 是不是认证，true是，false不是
    var verified: Bool = false
    // 用户认证的类型: -1 没有认证，0 认证用户，2、3、4 企业认证，220 达人
    var verified_type: Int = -1
    {
        didSet{
            
            switch verified_type {
            case 0:
                verified_Image = UIImage(named:"avatar_vip")
            case 2,3,4:
                verified_Image = UIImage(named:"avatar_enterprise_vip")
            case 220:
                verified_Image = UIImage(named:"avatar_grassroot")
            default:
                verified_Image = nil
            }
        }
        
    }
    // 用户认证类型的图片
    var verified_Image: UIImage?
    
    // 用户会员的等级mbrank
    var mbrank: Int = 0
    {
        didSet{
            
            if mbrank > 0 && mbrank < 7
            {
                mbrankImage = UIImage(named: "common_icon_membership_level"+"\(mbrank)")
           
            }
        }
    }
    var mbrankImage: UIImage?
    
    // 字典转模型
    init(dict: [String: AnyObject]){
        
        super.init()
        // 会调用 setValue forKey 给每一个属性赋值
        setValuesForKeys(dict)
        
    }

    // 这句话的意思是字典转模型的时候 要一一对应的，为了防止没有的字段崩溃，那么就跳过(没有的字段会走这里的，不用做什么操作就好了)
    override func setValue(_ value: Any?, forUndefinedKey key: String) {
        //print(key)
    }
    
    // 打印当前的模型
    static let properties1 = ["id","name","profile_image_url","verified","verified_type","mbrank"]
    override var description: String{
        let dict = self.dictionaryWithValues(forKeys: HomeUserModel.properties1)
        return "\(dict)"
    }
    
}
